#  This is part of Scopia Visual Framework
#
#
#  Copyright (C) 2008  Scopia Visual Interfaces Systems 
#                      http://www.scopia.es
#
#  author: Alejandro Conty
#  contributors:
#
#  This program is free software: you can redistribute it and/or modify
#  it under the terms of the GNU General Public License as published by
#  the Free Software Foundation, either version 3 of the License, or
#  (at your option) any later version.
#
#  This program is distributed in the hope that it will be useful,
#  but WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#  GNU General Public License for more details.
#
#  You should have received a copy of the GNU General Public License
#  along with this program.  If not, see <http://www.gnu.org/licenses/>.
from numpy import *

def translateMatrix(M, V):
    "applies a translation by V to the matrix M"
    return dot( M, array( ( (1,0,0,V[0]), (0,1,0,V[1]), (0,0,1,V[2]),(0,0,0,1) ), float32) )
#   M[:3,3] += asarray(V, float32)
#   return M

def scaleMatrix(M, V):
    "applies a scale by V to the matrix M"
    return dot( M, array( ( (V[0],0,0,0), (0,V[1],0,0), (0,0,V[2],0),(0,0,0,1) ), float32) )

def myvec( *args ):
    return array( args, float32)

